/* 引入vue */
import Vue from "vue"
/* 引入vuex */
import Vuex from "vuex"
/* 引入service */
import service from "../utils/service"
/* 将vuex安装到Vue里 */
Vue.use (Vuex)
export default new Vuex.Store({
    state:{
        count:22,
        age:12,
        isAdult: "未成年",
        isAllowMarry: false
    },
    /* getters 是states 上派生的数据 相当于vue里面的computed  */
    getters:{
        /* state:就是仓库的state，不用程序员处理，vuex以及处理好了 */
       isAdult:function(state){
       return state.isAdult ? "成人" : "未成年"
       }
    },
    mutations:{
        /* payload 载荷 */
        /* 增加count */
        mCountadd(state,payload){
            state.count += payload.inc
        },
        /* 增加age */
        mAgeadd(state,payload){
            state.age += payload.inc
            if (state.age>=18){
                state.isAdult = true
            } else {
                state.isAdult = false
            }
        }
    },
    actions:{
        /* context：上下文对象  在此就为 store对象 */
        ageAdd(context){
            /* this.service({
                url: ""
            })
            .then(res=>{
                context.commit({
                    type:"mAgeadd",
                    inc:res.data.count
                })
            }) */
        }
    }
})